package com.jic.market.service;

import com.jic.common.base.vo.Page;
import com.jic.common.base.vo.PageResult;
import com.jic.common.base.vo.RestResult;
import com.jic.market.entity.CouponConfigTemplate;
import com.jic.market.request.manager.coupon.template.CouponTemplateAddRequest;
import com.jic.market.request.manager.coupon.template.CouponTemplateDeleteRequest;
import com.jic.market.request.manager.coupon.template.CouponTemplateEditRequest;
import com.jic.market.request.manager.coupon.template.CouponTemplateListQueryRequest;
import com.jic.market.request.manager.coupon.template.TemplateRequest;
import com.jic.market.response.CouponConfigQueryResponse;
import com.jic.market.response.manager.coupon.template.CouponTemplateListQueryResponse;

import java.util.List;

/**
 * 优惠券配置模版表
 *
 * @author : seven
 * @version : v1.0.0
 * @email : 774329481@qq.com
 * @since : 2020-03-03 10:52:21
 */
public interface CouponConfigTemplateService {

    long insert(CouponConfigTemplate couponConfigTemplate);

    long delete(Long id);

    long update(CouponConfigTemplate couponConfigTemplate);

    CouponConfigTemplate queryByPrimaryKey(Long id);

    List<CouponConfigTemplate> query(CouponConfigTemplate couponConfigTemplate);

    PageResult<CouponConfigTemplate> queryPage(CouponConfigTemplate couponConfigTemplate, Page pageQuery);


    public RestResult<String> addCouponTemplate(CouponTemplateAddRequest couponTemplateAddRequest);

    public RestResult<CouponConfigQueryResponse> queryCouponTemplate(TemplateRequest templateRequest);

    public RestResult<Boolean> deleteCouponTemplate(CouponTemplateDeleteRequest couponTemplateDeleteRequest);

    public RestResult<Boolean> editCouponTemplate(CouponTemplateEditRequest couponTemplateEditRequest);

    public RestResult<PageResult<CouponTemplateListQueryResponse>> queryCouponTemplateList(CouponTemplateListQueryRequest couponTemplateListQueryRequest);

}